import pandas as pd
import os

def split_excel_file(file_path, split_size=500):
    """
    表格拆分功能：按指定行数拆分表格，不保留表头（第一行不是表头）
    
    参数:
        file_path: Excel文件路径
        split_size: 拆分条数，默认500行
        
    返回:
        tuple: (成功标志, 消息, 生成文件数)
    """
    try:
        # 验证拆分条数有效性
        if not isinstance(split_size, int) or split_size <= 0:
            return False, "拆分条数必须为正整数", 0
            
        # 读取Excel文件
        df = pd.read_excel(file_path)
        total_rows = len(df)
        
        if total_rows == 0:
            return False, "表格无数据，无需拆分", 0
            
        # 计算拆分参数
        num_files = (total_rows + split_size - 1) // split_size  # 向上取整
        
        # 拆分并保存文件
        dir_name, file_name = os.path.split(file_path)
        base_name = os.path.splitext(file_name)[0]
        
        for i in range(num_files):
            start_row = i * split_size  # 从0开始，不跳过任何行
            end_row = start_row + split_size  # 数据结束行
            split_data = df.iloc[start_row:end_row]  # 获取当前拆分数据
            
            # 直接保存拆分数据，不保留表头
            output_filename = f"{base_name}_拆分结果_{i+1}.xlsx"
            output_path = os.path.join(dir_name, output_filename)
            split_data.to_excel(output_path, index=False)
        
        return True, f"表格拆分完成，共生成 {num_files} 个文件", num_files
        
    except Exception as e:
        return False, f"表格拆分失败: {str(e)}", 0